5.3.3 APPX Application Design Manual

+ Chapter 1-1: Overview of Application Design
+ Chapter 1-2: Getting Started
+ Chapter 1-3: Data Dictionary
+ Chapter 1-4: Understanding Process Design
+ Chapter 1-5: Interprocess Communication
+ Chapter 1-6: Customizing Your Application
+ Chapter 1-7: The Documentation Facility
+ Chapter 1-8: Application Design Tools
+ Chapter 2-1: Data Dictionary Overview
+ Chapter 2-2: Data Dictionary Concepts
+ Chapter 2-3: Domains
+ Chapter 2-4: Files and Fields
+ Chapter 2-5: Work Fields
+ Chapter 3-1: Overview of APPX Processes
+ Chapter 3-2: Getting Started
+ Chapter 3-3: Process Definition
+ Chapter 3-4: Menu Processes
+ Chapter 3-5: Job Processes
+ Chapter 3-6: Input Processes
+ Chapter 3-7: Output Processes
+ Chapter 3-8: Update Processes
+ Chapter 3-9: Query Processes
+ Chapter 3-10: Inquiry Processes
+ Chapter 3-11: Status Processes
+ Chapter 3-12: Subroutine Processes
+ Chapter 3-13: Table Processes
+ Chapter 3-14: Automatic and Optional Children
+ Chapter 3-15: Using the Image Editor
+ Chapter 3-16: Using GUI Features of the Image Editor
+ Chapter 3-17: Using Event Points
+ Chapter 4-1: ILF Integration
+ Chapter 4-2: True/False Status Indicators
+ Chapter 4-3: Specifying Statements
+ Chapter 4-4: The ILF Editor
+ Chapter 4-5: The Appx ILF Debugger
- Chapter 4-6: ILF Keyword Reference
+ Chapter 4-7: Predefined Fields
+ Chapter 4-8: Runtime Subroutine's and Predefined Processes
+ Chapter 4-9: Appx Chart Director API

Chapter 4-6: ILF Keyword Reference

SCRATCH


The SCRATCH statement closes a file if it is open, and then deletes the file.

    ????? SCRATCH  ??? ????????            FAIL ? CACHE? ?
    (1)            (2) (3)                     (4)      (5)

(1) T/F execution conditions
(2) Application ID
(3) File name
(4) Fail action (0=nothing, 1=warning, 2=error, 3=cancel)
(5) Cache? (Y=cache version, N=disk version)

Sets True/False Status Indicator

The SCRATCH statement modifies the current status indicators by setting the next indicator to T if the file does not exist following the SCRATCH, and to F if the file still exists. If the next indicator is set to F, the FAIL parameter determines what additional action to take. In addition, on a false condition, the predefined field STATUS CODE returns a token indicating the reason for an I/O command failure. This token can be used as a key to read the system message file to obtain a descriptive I/O error message (see STATUS CODE for details).

Note that the next indicator is set to T if the file does not exist when the SCRATCH statement executes. Scratching a nonexistent file is considered successful because the file does not exist following the SCRATCH statement.

Using the Statement

The SCRATCH statement allows you to indicate whether to scratch the cached version of a file or the disk version.

When scratching a file, you can specify a database other than the current one by setting the predefined field NEXT DATABASE. If NEXT DATABASE is blank, the current database (contained in DATABASE) is used. If NEXT DATABASE is specified in conjunction with CACHE?=Y, then NEXT DATABASE is cleared and ignored as cache files, like memory files, have only one version.

Note that NEXT DATABASE is modifiable, whereas DATABASE is not, and that NEXT DATABASE is set to blank by the SCRATCH statement.

It is possible to have several versions of a file open at the same time by using the OPEN statement on different databases. The version of a file that is scratched is the last database accessed with the OPEN statement for that file. Refer to the OPEN statement for additional explanation.

Restrictions

If a file is scratched, it must be created again before it can be used.

Statement Ignored

A SCRATCH statement can fail when the file is physically open for use by another user, or when the current user has insufficient privileges to scratch the file.

Related PDFs

DATABASE, NEXT DATABASE

Related Statements

CLOSE, CREATE, IF EXIST, OPEN

Example

In the example below, a work file called TEMP is initialized by using the SCRATCH and CREATE statements. 

          SCRATCH  TAR TEMP                FAIL 0 CACHE? N
          CREATE   TAR TEMP      SHARE? Y  FAIL 0 CACHE NONE

Application Design Manual                                         "Powered by Appx Software"

690

©2006 By APPX Software, Inc. All Rights Reserved